package com.mss.media.util;

import com.mss.media.util.abnormal.MssException;

/**
 * @Author 湫
 * @Date 2021/12/1 11:53
 * Name 密码匹配正则
 */
public class RegexPassword {

    public static final String PW_PATTERN = "^(?![A-Za-z0-9]+$)(?![a-z0-9\\W]+$)(?![A-Za-z\\W]+$)(?![A-Z0-9\\W]+$)[a-zA-Z0-9\\W]{8,}$";

    /**
     * 密码格式限制
     * 密码必须是包含大写字母、小写字母、数字、特殊符号（不是字母，数字，下划线，汉字的字符）的8位以上组合
     */
    public static Boolean passwordValidation(String password) {
        boolean matches = password.matches(PW_PATTERN);
        if (!matches) {
            throw new MssException("密码不符合规范,请重新输入");
        }
        return true;
    }
}
